package com.bye.exception;

import com.bye.util.Result;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.RestControllerAdvice;

/*
* 全局异常处理, 用于捕获全局没有处理的异常
* */
//让注解@ExceptionHandler生效
//@ControllerAdvice
//@ResponseBody

//三合一
@RestControllerAdvice

public class MyExceptionHandler {

    //异常处理方法, 可以指定处理的异常
    @ExceptionHandler(Exception.class)
    public Result handlerException(Exception e){
        return Result.error(e.getMessage());
    }

    //一般是拦截器中的未认证通过抛出的异常, 会被异常处理器捕获
    @ExceptionHandler(MyException.class)
    public Result handlerMyException(MyException e){

        return Result.error(e.getMessage(),401);
    }
}
